package com.usian.controller;

import com.usian.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.client.loadbalancer.LoadBalancerClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;

@RestController
@RequestMapping("/consumer")
public class ConsumerController {

    @Autowired
    private RestTemplate restTemplate;
    @Autowired
    private LoadBalancerClient loadBalancerClient;

    @RequestMapping(value = "/findUserById/{id}")
    public User findUserById(@PathVariable Integer id){
        ServiceInstance choose = loadBalancerClient.choose("nacos-provider");

        String url = "http://"+choose.getHost()+":"+choose.getPort()+"/user/findUserByUserId/"+id;

        /*System.out.println(choose.getHost());
        System.out.println("============================================");
        System.out.println(choose.getPort());*/

        return restTemplate.getForObject(url,User.class);
    }
}
